## Parity completion of a matrix

from PyM import *

def parity_completion(G):
    return matrix([append_vector(g,-sum(g)) for g in G])

def prepend(a,v):
    if isinstance(v,Vector_type): v = list(v)
    return vector([a]+v)

def left_parity_completion(G):
    return matrix([prepend(-sum(g),g) for g in G])

G = vandermonde([1,2,3,2,1],3)

show(G)

Gb = parity_completion(G)

show(Gb)

bG = left_parity_completion(G)

show(bG)